1. Field
Example embodiments of the following disclosure relate to a cache memory system, and more particularly, to a cache memory system for providing shared caches and a method of operating the cache memory system.
2. Description of the Related Art
In the field of graphic design, for example, texture mapping is a method for adding detail, surface texture, or color to a virtual three-dimensional (3D) object in computer graphic applications to provide a realistic feeling to the 3D object.
In order to reduce aliasing effects in texture mapping, various methods may be used, including mipmap method, bilinear filtering method, and trilinear filtering method.
The mipmap method corresponds to a series of texture images, which are generated in a hierarchical structure by downscaling an original texture image in a stepwise manner. That is, the level of the original texture image is designated to be zero, and texture images of higher levels may be generated by downsampling the original texture image by ½ along each of two axes. Generally, the mipmap may be obtained in advance of generating a final image through rendering.
The bilinear filtering method is used to calculate a resulting value of a pixel by applying a weight value to a value of four respective texels neighboring the pixel based on a distance between the pixel and each texel. The value of each texel may correspond to color of the texel, for example, and the result value of the pixel may correspond to color of the pixel. The result value of the pixel may represent a combination of colors of the four neighboring texels of the pixel. A bilinear filtered image may be generated as a result of calculating a result value of each pixel in the image.
The trilinear filtering method is used to calculate a resulting value of a pixel by applying a weight value to a value of each corresponding pixel in two levels of texture images that are selected in a mipmap and processed by bilinear filtering.
To perform bilinear filtering during a single cycle, a need exists to read data of texels in one texture image simultaneously. Also, to perform trilinear filtering during a single cycle, a need exists to read data of texels in at least different two texture images within a mipmap simultaneously.
The bilinear filtering and trilinear filtering may be performed efficiently by providing texel data to a graphic processing unit (GPU) through a cache at a rapid rate. Accordingly, there exists a need for an improved cache memory system.